import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// https://vitejs.dev/config/
export default defineConfig({
    base: './',
    plugins: [
        vue(),
    ],
    // 强制预构建插件包
    optimizeDeps: {
        include: ['axios'],
    },

    // 打包配置
    build: {
        target: 'modules',
        outDir: 'dist', //指定输出路径
        assetsDir: 'assets', // 指定生成静态资源的存放路径
        minify: 'terser' // 混淆器，terser构建后文件体积更小
    },

    // 本地运行配置，及反向代理配置
    server: {
        host: "0.0.0.0",
        cors: true, // 默认启用并允许任何源
        open: true, // 在服务器启动时自动在浏览器中打开应用程序
        //反向代理配置，注意rewrite写法，开始没看文档在这里踩了坑
        proxy: {// 本地开发环境通过代理实现跨域，生产环境使用 nginx 转发
            '/api': {
                target: 'https://61.132.231.213:45288', // 通过代理接口访问实际地址。这里是实际访问的地址。vue会通过代理服务器来代理请求
                changeOrigin: true,
                ws: true,  // 允许websocket代理
                rewrite: (path) => path.replace(/^\/api/, '') // 将api替换为空
            }
        }
    }
})
